Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Cancellare ultimo carattere array una volta preso '\b'
Forum - C/C++ - Cancellare ultimo carattere array una volta preso '\b'

Avatar
Luk3 (Ex-Member)
Guru


Messaggi: 615
Iscritto: 16/08/2008

Segnala al moderatore
Postato alle 19:04
Lunedì, 11/04/2011
Salve, sto facendo un programma che in questo snap cerca uno studente in una matrice.
La ricerca però è simile all'instant search di google.

Il mio problema è che una volta premuto backspace, non cancello l'ultimo carattere, anzi non succede proprio nulla.

Aiuto!

Codice sorgente - presumibilmente C/C++

  1. k = 0;
  2.                 len_ricerca = 0;
  3.                 printf("\e[1;32m\n Ricerca studente\e[1;0m\n");
  4.                 printf("\n\t\e[1;32mCOGNOME\t\t     CLASSE\t\tVOTI (Ita Mat Inf Ing Ele)\e[1;0m\n\n");
  5.                 printf("\t   -\t\t        -\t\t-     -     -     -     -\n");
  6.                 printf("\n Inserisci studente da cercare: ");
  7.                 get = readKey_int();
  8.                 do
  9.                 {
  10.                         if(get == '\b')
  11.                         {
  12.                                 reg.ricerca[--k] = '\0';
  13.                                 len_ricerca--;
  14.                         }
  15.                         else
  16.                         {
  17.                                 reg.ricerca[k++] = get;
  18.                                 len_ricerca++;
  19.                         }
  20.                         clear();
  21.                         printf("\e[1;32m\n Ricerca studente\e[1;0m\n");
  22.                         printf("\n\t\e[1;32mCOGNOME\t\t     CLASSE\t\tVOTI (Ita Mat Inf Ing Ele)\e[1;0m\n\n");
  23.                        
  24.                         for(i = 0; i<no_stud; i++)
  25.                         {
  26.                                 flag = 0;
  27.                                 search = 0;                    
  28.                                 for(j=0; j<len_ricerca; j++)
  29.                                 {                      
  30.                                         if(reg.ricerca[j] == reg.cognome[i][j])
  31.                                         {
  32.                                                 search++;
  33.                                         }
  34.                                 }
  35.                                 if(search == len_ricerca)
  36.                                 {
  37.                                         print_Stud(reg.voto[i], reg.cognome[i], reg.classe[i]);
  38.                                         flag = 1;
  39.                                 }
  40.                         }
  41.                         if(flag == 0)
  42.                         {
  43.                             printf("\t   -\t\t        -\t\t-     -     -     -     -\n");
  44.                         }
  45.                         printf("\n Inserisci studente da cercare: ");
  46.                         for(i=0; i<len_ricerca; i++)
  47.                         {
  48.                             printf("%c", reg.ricerca[i]);
  49.                         }
  50.                         get = readKey_int();
  51.                 }      
  52.                 while(get != '\n');


PM Quote